package com.browser.core;

import com.browser.bookmark.BookmarkManager;
import com.browser.cache.CacheManager;
import com.browser.download.DownloadManager;
import com.browser.history.HistoryManager;
import com.browser.network.NetworkManager;
import com.browser.settings.SettingsManager;
import com.browser.search.SearchManager;
import lombok.Data;

@Data
public class BrowserCore {
    private final NetworkManager networkManager;
    private final CacheManager cacheManager;
    private final HistoryManager historyManager;
    private final BookmarkManager bookmarkManager;
    private final DownloadManager downloadManager;
    private final SettingsManager settingsManager;
    private final SearchManager searchManager;

    public BrowserCore() {
        this.networkManager = new NetworkManager();
        this.cacheManager = new CacheManager();
        this.historyManager = new HistoryManager();
        this.bookmarkManager = new BookmarkManager();
        this.downloadManager = new DownloadManager();
        this.settingsManager = new SettingsManager();
        this.searchManager = new SearchManager();
    }

    public void shutdown() {
        networkManager.shutdown();
    }
} 